<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>
<script>
    // https://www.runoob.com/jsref/jsref-obj-string.html
    // es5字符串常用方法
    let str = "hello world";
    console.log(str.length);

    // 指定位置的字符
    console.log(str.charAt(0));

    // 指定的位置的字符的 Unicode 编码
    console.log('charCodeAt', str.charCodeAt(0));

    // 连接两个或更多字符串，并返回新的字符串
    console.log('concat', str.concat("你好"));
    console.log('concat', str.concat("你好", "mortal"));

    // 字符串是否是以指定的子字符串结尾
    console.log('endsWith', str.endsWith("d"));

    // 字符串中是否包含指定的子字符串
    console.log('includes', str.includes("o"));

    // 某个指定的字符串值在字符串中首次出现的位置
    console.log('indexOf', str.indexOf("o"));

    // 某个指定的字符串值在字符串中首次出现的位置
    console.log('lastIndexOf', str.lastIndexOf("o"));

    console.log('match', str.match("o"));

    // 复制字符串指定次数
    console.log('repeat', str.repeat(3));

    // 在字符串中查找匹配的子串，并替换与正则表达式匹配的子串
    console.log('replace', str.replace("o", "O"));

    // 查找与正则表达式相匹配的值。
    console.log('search', str.search("o"));

    // 提取字符串的片断，并在新的字符串中返回被提取的部分。
    console.log('slice', str.slice(1, 4));

    // 把字符串分割为字符串数组。
    console.log('split', str.split("o"));

    // 如果是以指定的子字符串开头返回 true，否则 false。
    console.log(str.startsWith("h"));

    // 从0开始截取5个字符
    console.log(str.substr(1, 4));

    // 从1开始截取到第4个字符
    console.log(str.substring(1, 4));

    // JS方法之slice、splice、substring、substr
    // https://blog.csdn.net/weixin_42575028/article/details/137123750

    // trim
    let str1 = "   mortal   "
    console.log(str1);
    console.log(str1.trim());
    console.log(str1.trimStart());
    console.log(str1.trimEnd());
    // 字符串扩展


</script>

</html>